Add mass fraction multi-phase table to sesame2spiner#600
Conversation
Yurlungur
left a comment
There was a problem hiding this comment.
Nice! Glad it was a simple change. Regarding adding mass fractions to every EOS class... Broadly I'd be supportive of this, if we had an error message/stub in the base class as the default behavior. Clearly mass fractions aren't sensible for all EOS's but they are for enough EOS's we might want this.
It looks like the |
I believe Helmholtz does too... or if it doesn't, it could be exposed. |
…ssFraction and fill the string rather than the other way around
…d use the generic functions to do it
…lease enter a commit message to explain why this merge is necessary,
|
Updated to include the mass fraction query in the spiner EOS object. The unit test I added passes on my CPU machine, but not sure about the GPU machines (mostly the EOSPAC paths...) |
|
Would you like me to do review now? I could also maybe get eospac paths working through the CI? |
yes please. |
Yurlungur
left a comment
There was a problem hiding this comment.
@adamdempsey90 sorry for the delay. Some comments below. Did you want to mess with the paths yourself or did you want me to look at that? I'm happy to poke at it. Should have some time to do so tomorrow.
.gitlab/build_and_test.sh
Outdated
| source ${BUILD_ENV} | ||
| pushd ${BUILD_DIR} | ||
| if [[ -f ./sesame2spiner/sesame2spiner ]]; then | ||
| echo "/usr/projects/data/eos/eos-developmental/Sn2162/v01/sn2162-v01.bin" > sesameFilesDir.txt |
There was a problem hiding this comment.
I think this actually probably is sufficient to getting the paths to work on device.
There was a problem hiding this comment.
Yeah, the gpu tests are working. Although this path shouldn't be correct for LLNL, so I don't know about that
There was a problem hiding this comment.
Ah. We may need a general solution for that. Probably the same problem will show up for the KPT tests. My suggestion is that we set these paths as environment variables in re-git then they can be automatically slurped up here. But before we go down that path... let's ping Richard.
@rbberger what are your thoughts?
There was a problem hiding this comment.
We could also have some project level env script that gets loaded by the CI and sets those paths
…x w.r.t. dynamic memory handling.
Yurlungur
left a comment
There was a problem hiding this comment.
New changes for phase names looks good. It does occur to me that there is one slightly more evil way of cleaning this up. DataBox supports arithmetic types, of which char is one. So you could make the phase names a DataBox<char>. Then to treat it as a string, when desired, use DataBox::data. Then you can just register it with the databox names vec and it should (I think?) be serialized, moved to device, etc., all automatically.
That said, your updated handling seems perfectly good to me. Thanks for iterating on it!
adamdempsey90
left a comment
There was a problem hiding this comment.
I think this is all set on my end. Once #606 passes the tests, we can merge.
Jmm/mass frac
|
All tests are passing. I think this is ready to go @Yurlungur |
|
Great! Let's get this in. |
PR Summary
This adds the mass fraction SESAME table to the spiner tables that sesame2spiner outputs (if it exists). Tested in a downstream code.
Putting this up now for an initial review.
I still need to add the mass fractions to the spiner EOS class. Are we okay with adding new
MassFractionFromDensityTemperaturefunctions to all EOS classes?Still TODO:
PR Checklist
make formatcommand after configuring withcmake.If preparing for a new release, in addition please check the following: